// Licensed to Elasticsearch B.V under one or more agreements.
// Elasticsearch B.V licenses this file to you under the Apache 2.0 License.
// See the LICENSE file in the project root for more information.
//
// ███╗   ██╗ ██████╗ ████████╗██╗ ██████╗███████╗
// ████╗  ██║██╔═══██╗╚══██╔══╝██║██╔════╝██╔════╝
// ██╔██╗ ██║██║   ██║   ██║   ██║██║     █████╗
// ██║╚██╗██║██║   ██║   ██║   ██║██║     ██╔══╝
// ██║ ╚████║╚██████╔╝   ██║   ██║╚██████╗███████╗
// ╚═╝  ╚═══╝ ╚═════╝    ╚═╝   ╚═╝ ╚═════╝╚══════╝
// ------------------------------------------------
//
// This file is automatically generated.
// Please do not edit these files manually.
//
// ------------------------------------------------

#nullable restore

using System;
using System.Linq;
using Elastic.Clients.Elasticsearch.Serialization;

namespace Elastic.Clients.Elasticsearch.LicenseManagement;

public partial class LicenseManagementNamespacedClient : Elastic.Clients.Elasticsearch.NamespacedClientProxy
{
	/// <summary>
	/// <para>
	/// Initializes a new instance of the <see cref="Elastic.Clients.Elasticsearch.LicenseManagement.LicenseManagementNamespacedClient"/> class for mocking.
	/// </para>
	/// </summary>
	protected LicenseManagementNamespacedClient() : base()
	{
	}

	internal LicenseManagementNamespacedClient(Elastic.Clients.Elasticsearch.ElasticsearchClient client) : base(client)
	{
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse Delete(Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest request)
	{
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse Delete()
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse Delete(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestDescriptor> action)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestParameters>(request);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse> DeleteAsync(Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest request, System.Threading.CancellationToken cancellationToken = default)
	{
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse> DeleteAsync(System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse> DeleteAsync(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestDescriptor> action, System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.DeleteLicenseRequestParameters>(request, cancellationToken);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse Get(Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest request)
	{
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse Get()
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse Get(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestDescriptor> action)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestParameters>(request);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse> GetAsync(Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest request, System.Threading.CancellationToken cancellationToken = default)
	{
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse> GetAsync(System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse> GetAsync(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestDescriptor> action, System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetLicenseRequestParameters>(request, cancellationToken);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse GetBasicStatus(Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest request)
	{
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse GetBasicStatus()
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse GetBasicStatus(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestDescriptor> action)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestParameters>(request);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse> GetBasicStatusAsync(Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest request, System.Threading.CancellationToken cancellationToken = default)
	{
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse> GetBasicStatusAsync(System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse> GetBasicStatusAsync(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestDescriptor> action, System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetBasicStatusRequestParameters>(request, cancellationToken);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse GetTrialStatus(Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest request)
	{
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse GetTrialStatus()
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse GetTrialStatus(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestDescriptor> action)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestParameters>(request);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse> GetTrialStatusAsync(Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest request, System.Threading.CancellationToken cancellationToken = default)
	{
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse> GetTrialStatusAsync(System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse> GetTrialStatusAsync(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestDescriptor> action, System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequest, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusResponse, Elastic.Clients.Elasticsearch.LicenseManagement.GetTrialStatusRequestParameters>(request, cancellationToken);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse Post(Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest request)
	{
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse Post()
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse Post(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestDescriptor> action)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestParameters>(request);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse> PostAsync(Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest request, System.Threading.CancellationToken cancellationToken = default)
	{
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse> PostAsync(System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse> PostAsync(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestDescriptor> action, System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostRequestParameters>(request, cancellationToken);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse PostStartBasic(Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest request)
	{
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse PostStartBasic()
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse PostStartBasic(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestDescriptor> action)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestParameters>(request);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse> PostStartBasicAsync(Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest request, System.Threading.CancellationToken cancellationToken = default)
	{
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse> PostStartBasicAsync(System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse> PostStartBasicAsync(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestDescriptor> action, System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartBasicRequestParameters>(request, cancellationToken);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse PostStartTrial(Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest request)
	{
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse PostStartTrial()
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestParameters>(request);
	}

	public virtual Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse PostStartTrial(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestDescriptor> action)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequest<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestParameters>(request);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse> PostStartTrialAsync(Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest request, System.Threading.CancellationToken cancellationToken = default)
	{
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse> PostStartTrialAsync(System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestDescriptor();
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestParameters>(request, cancellationToken);
	}

	public virtual System.Threading.Tasks.Task<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse> PostStartTrialAsync(System.Action<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestDescriptor> action, System.Threading.CancellationToken cancellationToken = default)
	{
		var builder = new Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestDescriptor();
		action.Invoke(builder);
		var request = builder.Instance;
		request.BeforeRequest();
		return DoRequestAsync<Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequest, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialResponse, Elastic.Clients.Elasticsearch.LicenseManagement.PostStartTrialRequestParameters>(request, cancellationToken);
	}
}